A speaker, or hands-free, terminal includes a microphone and a loudspeaker, and enables a user to participate in a telephone conversation without the use of a handset. One problem with a hands-free terminal is a tendency for acoustic coupling between the microphone and the loudspeaker. The microphone picks up the speech which is being acoustically transmitted by the loudspeaker and transmits the speech back over the telephone line, as an echo, to the caller who is speaking at the remote, or "far" end. A hands-free telephone, like all telephones, also receives echoes of near end speech caused by reflections of speech signals from impedance mis-matches in telephone network circuitry. Such echoes return, via the loudspeaker, to the terminal user, who is at the "near" end.
To overcome this problem, terminals may include double echo cancelling systems. These systems include adaptive filters which produce, from incoming speech signals, replicas of the echoes. These systems then subtract the replicas, which are referred to as echo cancellation signals, from the incoming signals to "cancel" from them the included echoes. If the replica is not exactly the same as the echo, a residue of the echo remains.
The double echo cancelling systems include two adaptive filters, one associated with the microphone and one associated with the loudspeaker. The adaptive filters are controlled by servo circuits which, based on the residue signals, adjust the filter components until they mimic the acoustic paths of the associated echo signals.
The adaptive filter servo circuits must be controlled so that the adaptive filters cancel echoes and not direct speech signals. Accordingly, speech detectors are included in known echo cancelling systems to determine when "near" end or "far" end speech is present. When, for example, a "far end" speech detector detects speech, it disables the servo circuit of the adaptive filter that produces the echo cancellation signals which are subtracted from the incoming far end signals. This prevents the filter from adapting to the speech signals.
Meanwhile, the servo circuit of the adaptive filter that produces the echo cancellation signals that are subtracted from the incoming near end signals, that is, the signals produced by the microphone, is allowed to adjust that filter. The filter receives the far end speech signals and produces corresponding echo cancellation signals. These signals are then subtracted from the echo signals produced by the microphone. Any residue signals after subtraction are fed back to the servo circuit as error signals. The servo circuit responds to these error signals by adapting the filter to more closely approximate the associated echo path, so that it can produce an echo cancellation signal which reduces the echo to zero.
When the far end caller stops talking, the far end speech detector enables the servo circuit of the associated adaptive filter. This allows the servo circuit to adapt the filter to produce echo cancellation signals which replicate the echoes produced from the near end signals. When the "near end" speech detector detects speech, it disables the adaptation of the associated adaptive filter, so that the filter will not attempt to adapt to these speech signals.
In a prior system the speech detectors monitor the output signals from the subtraction circuits, i.e., the residue signals, to determine if speech is present. These detectors may interpret, as speech, included noise attributable to the adaptation of the associated adaptive filters. The speech detectors may thus enable the servo circuit of a filter which should be disabled, and thereby distort transmissions by cancelling speech signals.
These systems may also have problems during periods of "double talk," that is, when both the near end user and the far end caller are talking. With double talk, both of the speech detectors detect speech, and thus, both enable their associated adaptive filters. This promotes cancellation of the speech from both ends, which results in a disruption of the telephone conversation. Accordingly, what is needed is a control mechanism which responds appropriately to double talk.
The double echo cancellation systems may also include variable-gain attenuators, to attenuate the residue produced by the subtraction circuits. Known prior systems use the speech detectors to control the gain of the attenuators, where gain is defined herein as attenuation inversion. Accordingly, when a particular speech detector detects speech on a line, the detector either increases the gain of the attenuator associated with that line, which allows the speech signals to be transmitted at an increased power, or reduces the gain of the attenuator associated with the line over which the residue signal is transmitted, to reduce the power of that signal. Systems which control the attenuators with the speech detectors may have attenuation problems during double talk, when the system operates both of the attenuators simultaneously.